Refactor before work on window display
Wanted to add support for using display-buffer or popwin, ran into some
bugs, had to make changes to the code so future work will be easier.
Details below:
- separate between code to display window and code to populate buffer
contents
- add `which-key-horizontal-buffer-height` similar to
`which-key-vertical-buffer-width`
- abstract handling of different display methods into
`which-key/show-buffer` and `which-key/hide-buffer`, instead of mixed
in other functions
- remove `which-key/make-display-method-aliases`
- support two display methods: `minibuffer` and `side-window`, will add
popwin later
- create start/stop functions for which-key--close-timer
- a few other changes